CHECKERDROID : Automated Quality Assurance for Smartphone Applications
نویسندگان
چکیده
Smartphone applications’ quality is vital. However, many smartphone applications on market suffer from various bugs. One major reason is that developers lack viable techniques to help expose potential bugs in their applications. This paper presents a practical dynamic analysis tool, CheckerDroid, to help developers automatically detect both functional and non-functional bugs in their Android applications. CheckerDroid currently supports the detection of the following three types of bugs: null pointer exception, resource leak and sensor listener misusage. We built CheckerDroid by extending Java PathFinder (JPF), a widely-used model checker for general Java programs. Our extension addresses two technical challenges. First, Android applications are event-driven and lack explicit control flow information between event handlers. Second, Android applications closely hinge on native framework libraries, whose implementations are platform-dependent. To address these challenges, we derive event handler scheduling policies from Android documentations, and encode them to guide CheckerDroid to realistically execute Android applications. Besides, we modeled the side effects for a critical set of Android APIs such that CheckerDroid can conduct bug detection precisely. To evaluate CheckerDroid, we conducted experiments with seven popular real-world Android applications. CheckerDroid analyzed these applications in a few minutes, and successfully located real bugs in them.
منابع مشابه
Automated Quality Assurance for Heuristic-Based XML Creation Systems
Large volumes of XML document instances are created by conversion systems that rely on heuristic-based tagging. Quality assurance is typically conducted on individual document instances, but often there is no systematic regression testing of the conversion system applications used to tag the instances, especially when the patterns used for heuristic-based tagging are changed or updated. Because...
متن کاملNew horizons in automation of translation QA
The market of automated translation quality assurance tools offers quite a limited set of applications with the same well-known functionality as they offered a few years ago. The purpose of this paper is to review the automated translation quality assurance process, to describe several improvements we implemented in Verifika® and to provide measurement of their efficiency. In this paper we will...
متن کامل2D linear array device as a quality assurance tool in brachytherapy applications
Background: External beam radiotherapy and brachytherapy plays a vital role in the management of cancer cervix. High dose rate brachytherapy is being presently used worldwide for the brachytherapy applications. At present, 2-Dimensional linear array detectors are the most common QA tool used for pretreatment patient specific quality assurance in external beam radiotherapy alon...
متن کاملIntelligent System to Quality Assurance in Drugs Delivery
Improving quality assurance and providing effective healthcare are some of the most important aims of information and communication technologies (ICT). This chapter presents a novel solution to improve quality assurance in drugs delivery, i.e., reduce clinical errors caused by drug interaction and dose. For that purpose, we have proposed an innovative system based on Internet of things for the ...
متن کاملA Generic Framework for Automated Quality Assurance of Software Models Supporting Languages of Multiple Paradigms
Software Quality Assurance (QA) is a key area in the development and maintenance of scientific software systems in order to ensure the reliability of the output generated by such systems. Approaches taken in implementing QA within the lifecycle include manual techniques, which require developer intervention, and automated techniques, which can be completed by analysis toolsets. Manual QA techni...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Int. J. Software and Informatics
دوره 8 شماره
صفحات -
تاریخ انتشار 2014